const fs = require('fs');

// 1. 生成包含100个随机数的数组（范围0-999）
const generateRandomArray = (length) => {
  return Array.from({ length }, () => Math.floor(Math.random() * 1000));
};

// 2. 插入排序算法实现
const insertionSort = (arr) => {
  for (let i = 1; i < arr.length; i++) {
    let current = arr[i];
    let j = i - 1;
    
    while (j >= 0 && arr[j] > current) {
      arr[j + 1] = arr[j];
      j--;
    }
    arr[j + 1] = current;
  }
  return arr;
};

// 主程序
const main = () => {
  // 生成随机数组
  const originalArray = generateRandomArray(100);
  console.log('原始数组:', originalArray.slice(0, 10) + '...'); // 打印前10个元素示意

  // 执行排序
  const sortedArray = insertionSort([...originalArray]);
  console.log('排序数组:', sortedArray.slice(0, 10) + '...');

  // 写入文件
  const outputString = sortedArray.join(', ');
  fs.writeFile('sorted_array.txt', outputString, (err) => {
    if (err) throw err;
    console.log('文件已保存: sorted_array.txt');
  });
};

main();